package org.myspringframework.beans.factory.config.postprocessor;

import org.myspringframework.beans.BeansException;

//提供修改新实例化 Bean 对象的扩展点
public interface BeanPostProcessor {

    /**
     * 在 Bean 对象执行初始化方法之前，执行此方法，Aop等可能会修改对象
     */
    Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException;

    /**
     * 在 Bean 对象执行初始化方法之后，执行此方法，可能会修改对象
     */
    Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException;

}